package vista;

import java.awt.Color;
import java.awt.Font;
import java.util.Observable;
import java.util.Observer;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextArea;

import model.ModeloObsrvable;
import control.ControlLogOut;
import control.ControladorDarDatosCaso;

public class VistaTerminadoElCaso implements Observer{
	
	private VentanaPrincipal vista;
	private ModeloObsrvable modelo;

	public VistaTerminadoElCaso(ModeloObsrvable modelo, VentanaPrincipal vista) {
		this.vista = vista;
		this.modelo = modelo;
		modelo.addObserver(this);
	}

	@Override
	public void update(Observable arg0, Object arg1) {
		//repaint();
		if (modelo.elCasoEstaGanado()){
			vista.getContentPane().removeAll();
			pintarTodo("FELICITACIONES.\n HAS ARRESTADO A: ", "/vista/imagenes/atrapado.jpg");
			
			vista.sonido.detener();
			Sonido sirena = new Sonido("sirena.au");
			sirena.reproducir();
			
		}
		if (modelo.elCasoEstaPerdido()){
			vista.getContentPane().removeAll();
			
			vista.sonido.detener();
			Sonido trompeta = new Sonido("trompeta_de_perdedor.au");
			trompeta.reproducir();
			
			
			if (!modelo.quedaTiempo())
				pintarTodo("TE QUEDASTE SIN TIEMPO Y SE TE ESCAPO EL LADRON: ", "/vista/imagenes/wiki-thief.jpg");
			else
				pintarTodo("TU ORDEN DE ARRESTO NO ERA CORRECTA Y SE TE ESCAPO EL LADRON: ", "/vista/imagenes/wiki-thief.jpg");
		}
	}
	
	public void pintarTodo(String mensaje, String url) {
		JTextArea txtInicial = new JTextArea();
		txtInicial.setEditable(false);
		txtInicial.setBounds(10, 11, 1330, 189);
		txtInicial.setFont(new Font("Dialog", Font.ITALIC, 32));
		txtInicial.setWrapStyleWord(true);
		txtInicial.setLineWrap(true);
		txtInicial.setForeground(Color.white);
		txtInicial.setBackground(Color.black);
		txtInicial.setText(mensaje+modelo.getNombreDelLadron());
		vista.add(txtInicial);
		
		JButton btnOk_1 = new JButton("Me tengo que ir");
		btnOk_1.setFont(new Font("Tahoma", Font.PLAIN, 24));
		btnOk_1.setBackground(Color.black);
		btnOk_1.setForeground(Color.white);
		btnOk_1.addActionListener(new ControlLogOut(vista,modelo));
		btnOk_1.setBounds(973, 524, 301, 118);
		vista.add(btnOk_1);
		
		JButton btnNvoCaso = new JButton("Dame un nuevo caso!");
		btnNvoCaso.setFont(new Font("Tahoma", Font.PLAIN, 24));
		btnNvoCaso.setBackground(Color.black);
		btnNvoCaso.setForeground(Color.white);
		btnNvoCaso.addActionListener(new ControladorDarDatosCaso(modelo,vista));
		btnNvoCaso.setBounds(973, 300, 301, 118);
		vista.add(btnNvoCaso);
		
		JLabel lblImageeen = new JLabel("");
		lblImageeen.setIcon(new ImageIcon(VistaDarDatosCaso.class.getResource(url)));
		lblImageeen.setBackground(Color.WHITE);
		lblImageeen.setBounds(20, 200, 850, 600);
		vista.add(lblImageeen);
		vista.repaint();
		vista.setVisible(true);		
	}
}